Time synchronization in a medical device system or network

ABSTRACT

Medical devices can perform a plurality of functions, such as sensing, monitoring, deriving and/or calculating various physiological statuses of a patient (e.g., blood pressure, temperature, respiration rate, etc.). Medical devices can also be used to image part or all of a patient&#39;s body, to deliver a treatment, or to manage information related to a patient&#39;s care. The present disclosure is directed at one or more devices that perform these functions using a plurality of processing circuits, wherein each processing circuit has a timing circuit with a local clock. These processing circuits can be connected via a network, and each timing circuit can communicate with at least one other timing circuit in order to detect and correct time-differences between their local clocks. In this way, multiple processing circuits can be synchronized with each other to facilitate diagnosis or treatment of a patient&#39;s condition, or other aspects of a patient&#39;s care.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims benefit of U.S. Provisional Patent ApplicationNo.: 62/270,173, titled “Time Synchronization In A Medical Device SystemOr Network,” filed Dec. 21, 2015, which is herein incorporated byreference in its entirety.

FIELD

Embodiments of the present disclosure relate generally to medicaldevices, and more particularly, to synchronization of functions withinone or a plurality of medical devices.

BACKGROUND

Medical devices can perform a plurality of functions. For example,medical devices can be used to sense, monitor, derive and/or calculateany of a plurality of physiological statuses of a patient, including thepatient's blood pressure, temperature, respiration rate, blood oxygenlevel, end-tidal carbon dioxide level, pulmonary function, blood glucoselevel, and/or weight. Medical devices can also be used to image or scana patient's body, using any one of a number of methods, for instance,ultrasound, X-rays, computed tomography (CT), magnetic resonance imaging(MRI), molecular imaging, amongst others. Medical devices can also beused to deliver a treatment, such as facilitating or assisting apatient's breathing (e.g., using a ventilator), delivering an electricshock (e.g., using a defibrillator), delivering drugs, gases, compounds,or other medical agents, and other treatments. Furthermore, medicaldevices can also be used to assist in other aspects of a patient's care,such as reporting on the current real-time location of a patient,recording a patient's condition for later analysis, or communicating apatient's condition to a remote party, such as a hospital or physician.

In a medical treatment context, some or all of these functions canrequire tight time synchronization to function well, or at all. Inparticular, for applications where two or more functions need to becombined, synchronization between these two or more functions can benecessary or desirable.

SUMMARY

The techniques described herein provide for time synchronization ofmultiple processing circuits in a medical device system or network. Forexample, the system may account for communications latency that may bepresent between timing circuits of the system/network, resulting in asuitable shift between separate data streams for substantialsynchronization of medical-related data produced by the processingcircuits. In some cases, time differences between clocks of timingcircuits may also be determined as part of the synchronization. Invarious embodiments, the medical device can be a portable medicaltreatment or monitoring device, such as a monitor (e.g., hospital,emergency services), defibrillator and/or Automatic ExternalDefibrillator (AED). Alternatively, the medical system can comprisemultiple medical devices, which can be used in cooperation with oneanother, for example, in close proximity to each other or geographicallydispersed. The processing circuits being synchronized can be anyapparatus or system for monitoring a physiological status of a patient,delivering or facilitating a treatment for the patient, or recording orupdating information related to the patient, the apparatus, or thesystem itself.

In some embodiments, the medical system involves the timesynchronization of multiple medical devices that form a dynamicallysecure communications network. Such a secure network may bereconfigurable in a simple manner (e.g., automatically, manually) suchthat devices may seamlessly join or leave the secure network, triggeredby simple actions (e.g., user actuation, NFC activation, radiofrequency, proximity detection, etc.). The medical device(s) may beprovided as part of a single integrated apparatus (e.g., circuits withina housing performing various tasks involving sensing, communications,data transfer, processing, analysis, etc.), as separate apparatuseshaving various medical-related functions, and/or combinations thereof.That is, multiple apparatuses each with one or more processing circuitsassociated therewith may form a dynamically secure reconfigurablenetwork where, upon entering the network, using processes describedherein, each of the processing circuits may be substantiallysynchronized with one another. This synchronization may account for anumber of possible sources of time discrepancy, such as differences intime stamping, communications latency during signal transmittance and/orother sources.

According to Example 1, certain embodiments of the present disclosureare directed at a medical system comprising: a plurality of processingcircuits in communication with one another, each processing circuitconfigured to provide medical-related data; a plurality of timingcircuits, each timing circuit having a clock, wherein at least some ofthe timing circuits are each associated with a different processingcircuit of the plurality of processing circuits, and wherein each timingcircuit is configured to communicate with at least one other timingcircuit and produce at least one time stamped signal for the respectivetiming circuit and determine a communication latency between timingcircuits; and a processor configured to analyze the communicationlatency between timing circuits and adjust time-alignment ofmedical-related data from at least some of the plurality of processingcircuits so as to substantially synchronize the medical-related dataprovided from the at least some of the plurality of processing circuits.

According to Example 2, certain embodiments of the present disclosureare directed at Example 1, wherein the processor is configured todetermine time differences between the clocks of the timing circuitsduring communication of the processing circuits, and correct for thetime differences between the clocks.

According to Example 3, certain embodiments of the present disclosureare directed at any of Examples 1-2, wherein each timing circuit isfurther configured to correct for a time difference between the clock ofthe timing circuit and another timing circuit.

According to Example 4, certain embodiments of the present disclosureare directed at Example 1-3, wherein the plurality of processingcircuits include at least one sensor configured to monitor aphysiological status of a patient and to generate a set of sensor databased on the physiological status.

According to Example 5, certain embodiments of the present disclosureare directed at any of Examples 1-4, wherein the at least one sensorincludes an electrocardiogram (ECG) sensor configured to generate one ormore ECG waveforms.

According to Example 6, certain embodiments of the present disclosureare directed at any of Examples 1-5, wherein the at least one sensorfurther includes a second sensor comprising at least one of a heartbeatsensor configured to monitor a heartbeat of the patient, a blood oxygensensor configured to monitor a blood oxygen level of the patient, acarbon dioxide sensor configured to monitor an end-tidal carbon dioxidelevel of the patient, and an ultrasound sensor configured to generate anultrasound image of the patient; and a timing circuit associated withthe second sensor is configured to be substantially synchronized with atiming circuit associated with the ECG sensor.

According to Example 7, certain embodiments of the present disclosureare directed at any of Examples 1-6, wherein the at least one sensorincludes a blood pressure sensor configured to monitor a blood pressureof the patient and a heartbeat monitor configured to monitor a heartbeatof the patient; a timing circuit associated with the blood pressuresensor is configured to be substantially synchronized with a timingcircuit associated with the heartbeat monitor; and wherein the bloodpressure sensor is configured to record a systolic blood pressuremeasurement when the heartbeat monitor indicates that the patient'sheart is beating.

According to Example 8, certain embodiments of the present disclosureare directed at any of Examples 1-7, wherein the at least one sensorincludes an accelerometer configured to monitor an accelerationassociated with the patient and to generate a set of sensor data basedon the acceleration; and the processor is configured to modify at leastone other set of sensor data to compensate for inaccuracies associatedwith the acceleration.

According to Example 9, certain embodiments of the present disclosureare directed at any of Examples 1-8, wherein the at least one sensorincludes at least one of a blood pressure sensor, a heartbeat sensor, ablood oxygen sensor, a carbon dioxide sensor, an ultrasound sensor, anaccelerometer, an electrocardiogram (ECG) sensor, a spectralmuscle-chemistry sensor, a temperature sensor, a video-camera, and amicrophone.

According to Example 10, certain embodiments of the present disclosureare directed at any of Examples 1-9, wherein each timing circuit isconfigured to communicate with at least one other timing circuit via awired or optical serial communications network.

According to Example 11, certain embodiments of the present disclosureare directed at any of Examples 1-10, wherein each timing circuit isconfigured to communicate with at least one other timing circuit via awireless network.

According to Example 12, certain embodiments of the present disclosureare directed at any of Examples 1-11, wherein the plurality ofprocessing circuits, the plurality of timing circuits, and the processorare integrated into a single device.

According to Example 13, certain embodiments of the present disclosureare directed at any of Examples 1-12, wherein at least two of theplurality of processing circuits, and at least two of the plurality oftiming circuits, are integrated into a single device; and wherein atleast some of the plurality of processing circuits and at least some ofthe plurality of timing circuits are integrated into devices other thanthe single device.

According to Example 14, certain embodiments of the present disclosureare directed at any of Examples 1-13, wherein the plurality ofprocessing circuits, the plurality of timing circuits, and the processorare dispersed across two or more devices connected via a network.

According to Example 15, certain embodiments of the present disclosureare directed at any of Examples 1-14, wherein a processing circuit ofthe plurality of processing circuits is configured to be dynamicallyconnected to and disconnected from the processor, and wherein theprocessing circuit is configured to communicate with the processor onlywhen the processing circuit is dynamically connected.

According to Example 16, certain embodiments of the present disclosureare directed at any of Examples 1-15, wherein the plurality ofprocessing circuits include at least one treatment circuit configured toadminister a treatment to the patient.

According to Example 17, certain embodiments of the present disclosureare directed at any of Examples 1-16, wherein the treatment circuitincludes at least one of a ventilator and a defibrillator shock device.

According to Example 18, certain embodiments of the present disclosureare directed at any of Examples 1-17, wherein each timing circuit of atleast some of the plurality of timing circuits is configured to: receivea synchronization message having a time stamp from another timingcircuit acting as a master timing circuit; send a delay request messageat a delay request sending time; determine a master-slave timedifference based on at least the time stamp and the delay requestsending time; and adjust the clock of the timing circuit based on themaster-slave time difference.

According to Example 19, certain embodiments of the present disclosureare directed at any of Examples 1-18, wherein each timing circuit isconfigured to: determine whether to act as a master timing circuit or aslave timing circuit; when acting as a slave timing circuit, to: receivea synchronization message having a time stamp from another timingcircuit acting as a master timing circuit, send a delay request messageat a delay request sending time, determine a master-slave timedifference based on at least the time stamp and the delay requestsending time, and adjust the clock of the timing circuit based on themaster-slave time difference; and when acting as a master timingcircuit, to: send the synchronization message having the time stamp, andreceive the delay request message from another timing circuit acting asa slave timing circuit.

According to Example 20, certain embodiments of the present disclosureare directed at any of Examples 1-19, wherein at least some of thetiming circuits are configured to determine whether to act as a mastertiming circuit or a slave timing circuit based on a pre-defined setting.

According to Example 21, certain embodiments of the present disclosureare directed at any of Examples 1-20, wherein each timing circuit of atleast some of the timing circuits is configured to determine whether toact as a master timing circuit or a slave timing circuit based oncommunications with at least one other timing circuit.

According to Example 22, certain embodiments of the present disclosureare directed at any of Examples 1-21, wherein each of the plurality oftiming circuits is further configured to: when acting as a master timingcircuit: send a delay response message in response to the delay requestmessage; and when acting as a slave timing circuit: receive the delayresponse message at a delay response receipt time from the other timingcircuit acting as the master timing circuit, and determine themaster-slave time difference based on at least the delay responsereceipt time.

According to Example 23, certain embodiments of the present disclosureare directed at any of Examples 1-22, wherein the plurality ofprocessing circuits are configured to form a secure communicationsnetwork.

According to Example 24, certain embodiments of the present disclosureare directed at any of Examples 1-23, wherein the plurality ofprocessing circuits are each configured to dynamically join or leave thesecure communications network.

According to Example 25, certain embodiments of the present disclosureare directed at any of Examples 1-24, wherein the medical system isconfigured to output an indication representative of the communicationlatency between timing circuits to a medium for user review.

According to Example 26, certain embodiments of the present disclosureare directed at a method of synchronizing a medical system, the methodcomprising: providing, from each of a plurality of processing circuits,a set of medical-related data; providing a plurality of timing circuits,each timing circuit having a clock, wherein at least some of the timingcircuits are each associated with a different processing circuit of theplurality of processing circuits; at each timing circuit: communicatingwith at least one other timing circuit, and determining a timedifference between the clocks of the timing circuit and the at least oneother timing circuit; and synchronizing, at a processor, medical-relateddata generated from the plurality of processing circuits.

According to Example 27, certain embodiments of the present disclosureare directed at Examples 26, the method further comprising at each of atleast some of the plurality of timing circuits, correcting for thedetermined time difference.

According to Example 28, certain embodiments of the present disclosureare directed at any of Examples 26,-27 wherein the plurality ofprocessing circuits includes at least one sensor configured to monitor aphysiological status of a patient and to generate a set of sensor databased on the physiological status.

According to Example 29, certain embodiments of the present disclosureare directed at any of Examples 26-28, wherein the at least one sensorincludes an electrocardiogram (ECG) sensor configured to generate one ormore ECG waveforms.

According to Example 30, certain embodiments of the present disclosureare directed at any of Examples 26-29, wherein the at least one sensorfurther includes a second sensor drawn from at least one of a heartbeatsensor configured to monitor a heartbeat of the patient, a blood oxygensensor configured to monitor a blood oxygen level of the patient, acarbon dioxide sensor configured to monitor an end-tidal carbon dioxidelevel of the patient, and an ultrasound sensor configured to generate anultrasound image of the patient; the method further comprisingdetermining and correcting for a time difference between a timingcircuit associated with the ECG sensor and a timing circuit associatedwith the second sensor.

According to Example 31, certain embodiments of the present disclosureare directed at any of Examples 26-30, wherein the at least one sensorincludes a blood pressure sensor configured to monitor a blood pressureof the patient and a heartbeat monitor configured to monitor a heartbeatof the patient; the method further comprising: determining andcorrecting for a time difference between a timing circuit associatedwith the blood pressure sensor and a timing circuit associated with theheartbeat monitor; and taking a systolic blood pressure measurementusing the blood pressure sensor when the heartbeat monitor indicatesthat the patient's heart is beating.

According to Example 32, certain embodiments of the present disclosureare directed at any of Examples 26-31, wherein the at least one sensorincludes an accelerometer configured to monitor an accelerationassociated with the patient and to generate a set of sensor data basedon the acceleration; and the method further comprises modifying, at theprocessor, at least one other set of sensor data to compensate forinaccuracies associated with the acceleration.

According to Example 33, certain embodiments of the present disclosureare directed at any of Examples 26-32, wherein the at least one sensorincludes at least one of a blood pressure sensor, a heartbeat sensor, ablood oxygen sensor, a carbon dioxide sensor, an ultrasound sensor, anaccelerometer, an electrocardiogram (ECG) sensor, a spectralmuscle-chemistry sensor, a temperature sensor, a video-camera, and amicrophone.

According to Example 34, certain embodiments of the present disclosureare directed at any of Examples 26-33, wherein the communicating with atleast one other timing circuit is accomplished via a wired or opticalserial communications network.

According to Example 35, certain embodiments of the present disclosureare directed at any of Examples 26-34, wherein the communicating with atleast one other timing circuit is accomplished via a wireless network.

According to Example 36, certain embodiments of the present disclosureare directed at any of Examples 26-35, wherein the plurality ofprocessing circuits, the plurality of timing circuits, and the processorare integrated into a single device.

According to Example 37, certain embodiments of the present disclosureare directed at any of Examples 26-36, wherein at least two of theplurality of processing circuits, and at least two of the plurality oftiming circuits, are integrated into a single device; and wherein atleast some of the plurality of processing circuits and at least some ofthe plurality of timing circuits are integrated into devices other thanthe single device.

According to Example 38, certain embodiments of the present disclosureare directed at any of Examples 26-37, wherein the plurality ofprocessing circuits, the plurality of timing circuits, and the processorare dispersed across two or more devices connected via a network.

According to Example 39, certain embodiments of the present disclosureare directed at any of Examples 26-38, wherein a processing circuit ofthe plurality of processing circuits is configured to be dynamicallyconnected to and disconnected from the processor, and wherein theprocessing circuit is configured to communicate with the processor onlywhen the processing circuit is dynamically connected.

According to Example 40, certain embodiments of the present disclosureare directed at any of Examples 26-39, wherein at least one of thetiming circuits is associated with a treatment circuit configured toadminister a treatment to the patient.

According to Example 41, certain embodiments of the present disclosureare directed at any of Examples 26-40, wherein the treatment circuitincludes at least one of a ventilator and a defibrillator shock device.

According to Example 42, certain embodiments of the present disclosureare directed at any of Examples 26-41, further comprising: at eachtiming circuit of at least some of the timing circuits: receiving asynchronization message having a time stamp from another timing circuitacting as a master timing circuit; sending a delay request message at adelay request sending time; determining a master-slave time differencebased on at least the time stamp and the delay request sending time; andadjusting the clock of the timing circuit based on the master-slave timedifference.

According to Example 43, certain embodiments of the present disclosureare directed at any of Examples 26-42, further comprising: at eachtiming circuit: determining whether to act as a master timing circuit ora slave timing circuit; when acting as a slave timing circuit: receivinga synchronization message having a time stamp from another timingcircuit acting as a master timing circuit, sending a delay requestmessage at a delay request sending time, determining a master-slave timedifference based on at least the time stamp and the delay requestsending time, and adjusting the clock of the timing circuit based on themaster-slave time difference; and when acting as a master timingcircuit: sending the synchronization message having the time stamp, andreceiving the delay request message from another timing circuit actingas a slave timing circuit.

According to Example 44, certain embodiments of the present disclosureare directed at any of Examples 26-43, wherein at at least some of thetiming circuits, the determining whether to act as a master timingcircuit or a slave timing circuit is based on a pre-defined setting.

According to Example 45, certain embodiments of the present disclosureare directed at any of Examples 26-44, wherein at at least some of thetiming circuits, the determining whether to act as a master timingcircuit or a slave timing circuit includes communicating with at leastone other timing circuit.

According to Example 46, certain embodiments of the present disclosureare directed at any of Examples 26-45, further comprising: at eachtiming circuit: when acting as a master timing circuit: sending a delayresponse message in response to the delay request message; and whenacting as a slave timing circuit: receiving the delay response messageat a delay response receipt time from the other timing circuit acting asthe master timing circuit; wherein the determination of the master-slavetime difference is also based on the delay response receipt time.

According to Example 47, certain embodiments of the present disclosureare directed at any of Examples 26-46, further comprising forming asecure communications network between the plurality of processingcircuits.

According to Example 48, certain embodiments of the present disclosureare directed at any of Examples 26-47, wherein the plurality ofprocessing circuits are each configured to dynamically join or leave thesecure communications network.

According to Example 49, certain embodiments of the present disclosureare directed at any of Examples 26-48, further comprising outputting anindication representative of the communication latency between timingcircuits to a medium for user review.

These and other capabilities of the disclosed subject matter will bemore fully understood after a review of the following figures, detaileddescription, and claims. It is to be understood that the phraseology andterminology employed herein are for the purpose of description andshould not be regarded as limiting.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present disclosure, referenceis now made to the following descriptions taken in conjunction with theaccompanying drawing, in which:

FIG. 1 depicts an exemplary medical system, according to someembodiments.

FIG. 2 depicts one potential embodiment of a medical system, accordingto some embodiments.

FIGS. 3A and 3B are signal flow diagrams illustrating an exemplarysignal flow for coordinating timing between a master timing circuit anda slave timing circuit, according to some embodiments.

FIG. 4 is a flowchart illustrating an exemplary process for coordinatingtiming among a plurality of timing circuits, according to someembodiments.

FIGS. 5A and 5B illustrate two potential network architectures for amedical system, according to some embodiments.

FIG. 6A illustrates how an ECG sensor circuit can be synchronized andcombined with an ultrasound sensor circuit, according to someembodiments.

FIG. 6B illustrates how an ECG sensor circuit can be synchronized andcombined with an accelerometer circuit, according to some embodiments.

FIG. 6C illustrates how a blood pressure sensor circuit can besynchronized and combined with a heartbeat monitor, according to someembodiments.

FIG. 6D illustrates how a defibrillator circuit can be synchronized andcombined with a breathing sensor circuit, according to some embodiments.

FIG. 6E illustrates how a defibrillator circuit can be synchronized andcombined with a sensor or treatment circuit, according to someembodiments.

FIG. 7 depicts an exemplary computer system with which embodiments ofthe present disclosure may be utilized, according to some embodiments.

DETAILED DESCRIPTION

As discussed above, medical devices can perform a plurality offunctions. These functions can include sensing, monitoring, derivingand/or calculating any of a plurality of physiological statuses of apatient. Medical devices can also be used to image or scan a patient'sbody, to deliver a treatment, or to assist in other aspects of apatient's care. In some cases, it can be desirable to time-synchronizetwo or more of these functions. For example, it can be desirable tosynchronize two different sensors monitoring two different physiologicalstatuses of a patient. It can also be desirable to synchronize a sensormonitoring a physiological status of a patient with a patient datarecord, or with a treatment device delivering a treatment.

The present disclosure is directed at methods, systems and apparatus forproviding time-synchronization across multiple processing circuits in amedical device system or network. According to some embodiments, eachprocessing circuit can be provided with a timing circuit with a localclock. The timing circuits can each include a local clock, and thetiming circuits can communicate with one another to determine andcorrect for variations between the local clocks of the timing circuits.In some embodiments, one of the timing circuits can act as a “master”timing circuit, and each of the other timing circuits can act as “slave”timing circuits that synchronize with the local clock at the mastertiming circuit. In some cases, these timing circuits can enable theprocessing circuits of medical system to achieve sub-microsecond levelsynchronization. In other cases, these timing circuits can enable theprocessing circuits to achieve synchronization within the range of 1-100microseconds (e.g., 1-10 microseconds), or less. Specific embodimentsfor addressing the aforementioned needs, as well as other needs, aredescribed in further detail below.

In some embodiments, the present disclosure is directed at synchronizingmultiple processing circuits in a single medical device. For example,the medical device can be a defibrillator, an Automatic ExternalDefibrillator (AED) and/or a patient monitoring device that monitors oneor more physiological statuses of a patient. The disclosed methods,systems and apparatus can be used to synchronize the operations of twoor more of these processing circuits.

In other embodiments, the present disclosure is directed atsynchronizing processing circuits dispersed across two or more medicaldevices in close proximity to one another, e.g., within the sameambulance or within the same room. The disclosed methods, systems andapparatus can be used to synchronize the operations of these two medicaldevices over a local wired or wireless network.

In yet other embodiments, the present disclosure is directed atsynchronizing processing circuits dispersed across two or more medicaldevices that are geographically distant from one another. For instance,one medical device can be situated in an ambulance, whereas anothermedical device can be situated in a hospital or other medical carefacility. As another example, one medical device can be situated in anambulance or medical care facility, and another medical device can besituated at a remote patient records facility or patient analysisfacility. The disclosed methods, systems and apparatus can be used tosynchronize the operations of these medical devices over a long-distancewired or wireless network.

In some embodiments, the present disclosure relates to the timesynchronization of processing circuits that form a dynamically securereconfigurable communications network. As noted above, the processingcircuits may be provided as part of a single integrated medicalapparatus and/or provided within separate medical apparatuses. Inaccordance with aspects of the present disclosure, once the processingcircuit(s) join the secure network, the processing circuits may besubstantially synchronized with one another.

FIG. 1 depicts an exemplary medical system 100, according to someembodiments. The medical system 100 can include a plurality ofprocessing circuits, including control and communications processingcircuits 110, treatment processing circuits 120, and/or sensorprocessing circuits 130. Each processing circuit can be configured toperform different tasks of a plurality of tasks, and can also beconfigured to output a set of data, such as a continuous or discretedata stream.

Control and communications processing circuits 110 can include, withoutlimitation, communications processing circuit 111, user-interfaceprocessing circuit 112, control processing circuit 113, recordsprocessing circuit 114, and/or location processing circuit 115.Communications processing circuit 111 can be configured to facilitatecommunications between the medical system 100 and an outside device orsystem (not shown), or to facilitate communications between processingcircuits within medical system 100. For example, communicationsprocessing circuit 111 can comprise a wireless transceiver configured tocommunicate with an external network using cellular technologies such as3GPP, or communications processing circuit can function as a gateway orload balancer managing internal communications between processingcircuits within medical system 100. Communications processing circuitcan also include short-range wireless transceivers, such as Bluetooth orWiFi, configured to communicate with an outside device or system (notshown) or to facilitate communications within medical system 100.Communications processing circuit can also comprise wired communicationsinterfaces, such as Ethernet, intranet, RS232, USB, or other types ofports or interfaces.

User interface processing circuit 112 can be configured to operate auser interface for receiving user input and for displaying data, resultsor analyses to a user. User interface processing circuit 112 cancomprise any known user interface in the art, including withoutlimitation, a touchscreen, keyboard, mouse, trackball, a monitor ordisplay, speakers, and/or haptic feedback mechanisms. Control processingcircuit 113 can be configured to control and/or coordinate the functionsof other processing circuits, and can comprise any special-purpose orgeneral purpose processor. Records processing circuit 114 can beconfigured to record and/or keep track of a patient's medical record,including recording and updating a patient's condition in real-time,accessing a patient's past medical records, and keeping track of notesfrom physicians and other healthcare providers. Records processingcircuit 114 can also comprise any special-purpose or general-purposeprocessor or microprocessor, and/or any associated volatile ornon-volatile memory. Location processing circuit 115 can be configuredto handle location-related tasks associated with the patient. Forexample, location circuit 115 can comprise a GPS receiver configured todetermine a location of interest, such as a patient's current locationor a care-giver's current location. Location processing circuit 115 canalso hardware, and/or be configured to execute software, configured todetermine an optimal route between two points, and to provide directionsto a user regarding how to navigate to an appropriate location. Locationprocessing circuit 115 can also be configured to determine the closestavailable point of interest, such as the closest available healthcarefacility.

Treatment processing circuits 120 can include, without limitation, adrug delivery processing circuit 121, a ventilator processing circuit122, and/or a defibrillator processing circuit 123. Drug deliveryprocessing circuit 121 can be any processing circuit configured toadminister a drug, compound, or other medical agent to a patient. Thedrug, compound, or other medical agent can be delivered in a liquidform, a gaseous form, a tablet form, or some other form. Ventilatorprocessing circuit 122 can be any processing circuit configured tofacilitate or assist a patient's breathing. Defibrillator processingcircuit 123 can be any processing circuit configured to deliver atherapeutic electric shock to, for example, re-start or stabilize apatient's heart rhythm.

Sensor processing circuits 130 can include, without limitation,microphone/video camera processing circuit 131, heartbeat monitorprocessing circuit 132, breathing sensor processing circuit 133,spectral muscle-chemistry sensor processing circuit 134, ECG sensorprocessing circuit 135, accelerometer processing circuit 136, ultrasoundsensor processing circuit 137, end-tidal carbon dioxide (ETCO2) sensorprocessing circuit 138, and/or blood pressure sensor processing circuit139. Microphone/video camera circuit 131 can be any processing circuitconfigured to monitor a patient's physiological condition using amicrophone, video camera, or photo camera. Heartbeat monitor 132 can beany processing circuit configured to monitor and measure a patient'sheartbeat, using for instance, haptic or auditory sensors. Breathingsensor processing circuit 133 can be any processing circuit configuredto monitor a patient's respiratory rate, or other aspects related to apatient's breathing. Spectral muscle-chemistry sensor processing circuit134 can be any processing circuit configured to use reflectancespectroscopy as a method to diagnose or determine a patient's condition.ECG sensor processing circuit 135 can be any processing circuitconfigured to measure, monitor, and/or calculate a patient'selectrocardiogram (ECG) waveform.

Accelerometer processing circuit 136 can be any processing circuitconfigured to measure an acceleration associated with a patient. Forexample, accelerometer processing circuit 136 can comprise anaccelerometer unit embedded into or integrated into a device positionedclose to a patient, or within a vehicle transporting the patient; bymeasuring the acceleration associated with the device and/or thevehicle, the accelerometer can estimate the patient's acceleration byassuming that the patient is also being subjected to the sameacceleration forces. Accelerometer processing circuit 136 can alsocomprise a wired or wireless sensor configured to be attached to apatient, and to measure the patient's motion or acceleration (e.g., todetect a patient's shivering, or ambulatory motions). Ultrasound sensorprocessing circuit 137 can comprise a processing circuit configured togenerate an ultrasound image of all or a portion of a patient's body.ETCO2 sensor processing circuit 138 can comprise any processing circuitconfigured to measure, monitor, or derive by calculation a patient'send-tidal carbon dioxide level. Blood pressure sensor circuit 139 cancomprise any processing circuit configured to measure a patient's bloodpressure.

While FIG. 1 lists a plurality of processing circuit types, many othertypes of processing circuits are also possible. For example, the medicalsystem 100 can also comprise processing circuits associated with ablood-oxygen level sensor, a pulse oximetry sensor, a reflectancemonitoring sensor, an X-ray, MRI, or CT scanner, a blood glucose sensor,and/or a temperature sensor. Each of the aforementioned processingcircuits can include any or all of a sensing or implementing instrument(e.g., the leads for an ECG monitor, or a pressure sensor for a bloodpressure sensor), any devices, systems, or software necessary to power,operate, and/or control said sensing/implementing instrument, as well asany devices, systems, or software necessary to interpret, analyze,record, or track readings or signals from said sensing/implementinginstruments. For example, each processing circuit can include any or allof a general-purpose, programmable processor or microprocessor, aspecial-purpose processor or microprocessor, an application-specificintegrated circuit (ASIC), volatile and/or non-volatile memory, shiftregisters, data buses, serial-to-parallel converters, analog-to-digitalconverters, multiplexers and/or demultiplexers, amplifiers, and/orfilters. Each of the aforementioned processing circuits can alsoimplement software stored in memory and/or executed on a single or onshared processors. In some embodiments, each of the aforementionedcircuits can be implemented as separate processors running softwarestored in memory.

Implementing some or all of the above-mentioned processing circuits asseparate standalone hardware devices, or as separate processors, can beadvantageous in certain circumstances. For example, it can sometimes bedesirable to separate processing circuits and/or multiple processors forpower distribution, shared memory and/or power sensitivity reasons, suchas to relieve computational burdens associated with medical applications(e.g., patient monitoring, providing feedback/instructions tocaregivers, providing secure exchange of substantial amounts of data,etc.). As one illustrative example, defibrillator processing circuit 123can be configured to activate or direct large doses of electricalvoltage or current. Leakage currents or induced electromagneticradiation from these large doses of electrical voltage or current can beharmful to the operation of other, more sensitive processing circuits(e.g., ECG sensor circuit 135). Or as another example, certain morecritical processing circuits, such as ventilator processing circuit 122,can be run off of a dedicated power supply separate from otherprocessing circuits to mitigate the risk of power supply interruptionsdisrupting operations.

It can also be desirable to separate processing circuits for securityreasons. For instance, communications processing circuit 111, recordsprocessing circuits 114, and/or user-interface processing circuit 112can be subject to strict security protocols that mitigate the risk ofunauthorized copying, eavesdropping, or tampering of patient data.However, such security protocols may be unnecessary for other processingcircuits, such as accelerometer processing circuit 136 or blood pressuresensor processing circuit 139, and can unnecessarily slow or hamper theoperations of these other processing circuits. As a result, separatingthe functions of a medical system into discrete processing circuits,wherein some circuits incorporate added security protocols, can allowthe medical system to perform its functions faster and more efficiently.

As another example, it can be desirable to separate processing circuitsfor reasons related to computational efficiency and cost. Certain typesof processing circuits can be uniquely suited for certain types oftasks, while being relatively inefficient at other types of tasks. Sincethe above-mentioned processing circuits can be configured to perform awide variety of tasks, the processor, software, and/or hardware of eachprocessing circuit can be tailored to best suit the type of task it isresponsible for. For instance, ECG sensor processing circuit orultrasound sensor processing circuit can require advanced graphics ordigital signal processing capabilities, whereas records processingcircuit may require advanced database access capabilities. Certainprocessing circuits may require high performing hardware, whereas othersmay require only relatively inexpensive hardware. As a result, using aprocessing circuit, such as a single processor, that multitasks acrossall the different functions performed by each of the processing circuitscan be inefficient and unduly expensive.

As another example, it can also be desirable to separate processingcircuits for portability reasons, or to enable operation over large,dispersed geographic areas. Embodiments illustrating such configurationsare described in further detail below in relation to FIG. 2 .

FIG. 1 is exemplary only, and may be modified by adding or subtractingprocessing circuits, as well as by integrating processing circuits intolarger, more general circuits, and/or dividing processing circuits intofiner subcomponents.

Each of the aforementioned processing circuits can be connected to atleast one, and possibly all, other processing circuits via a network150. The network 150 can be a wired or wireless network, and caninclude, without limitation, an Ethernet network, a cellular network, aBluetooth network, and/or other types of networks. The network 150 canlink processing circuits integrated into a single portable medicaldevice, such as a defibrillator, Automatic External Defibrillator (AED),wearable defibrillator, patient medical sign monitoring tool, or otherdevice. The network 150 can also link processing circuits dispersed inmultiple medical devices within close proximity to one another, as wellas multiple medical devices and systems located far apart from oneanother (e.g., in another city, country, or continent). While FIG. 1depicts each processing circuit as being connected to the network 150 ina hub-and-spoke architecture, other network topologies are alsopossible. Examples of other possible network topologies are discussedbelow in relation to FIGS. 5A and 5B.

Each of the aforementioned processing circuits can also include or beassociated with a timing circuit. For example, communications circuit111 can include a timing circuit 111 b, user-interface circuit 112 caninclude a timing circuit 112 b, etc. as shown in FIG. 1 for eachcircuit. Each of the timing circuits can be associated with a processingcircuit, and can be configured to communicate with at least some of theother timing circuits, via network 150, in order to coordinate timingamong the processing circuits. Timing circuits can comprise any of thecomponents that may make up a processing circuit, as described above. Insome instances, timing circuits can also share components (e.g.,processors or system resources such as memory) with the processingcircuit it is associated with. In some embodiments, timing circuits canalso include software that is stored in memory, wherein the software isexecuted by either the processing circuit with which the timing circuitis associated, or by a separate processing circuit. As discussed above,the timing circuits can each include a local clock, and the timingcircuits can communicate with one another to determine and correct forvariations between the local clocks of the timing circuits. In someembodiments, one of the timing circuits can act as a “master” timingcircuit, and each of the other timing circuits can act as “slave” timingcircuits that synchronize with the local clock at the master timingcircuit. In some cases, these timing circuits can enable the processingcircuits of medical system 100 to achieve sub-microsecond levelsynchronization. The operation of the timing circuits are described ingreater detail below.

FIG. 2 depicts one potential embodiment of medical system 100. FIG. 2includes a mobile environment 200, which can be a mobile clinic, anambulance, or other type of mobile healthcare vehicle or facility. FIG.2 also includes an enterprise environment 230, which can be a hospital,clinic, healthcare processing center, and/or other environment with afixed location. Mobile environment 200 can include a first medicaldevice 210 as well as a second medical device 220, each of which canserve different purposes and can include different processing circuits.For example, the first medical device 210 can be a defibrillator orAutomated External Defibrillator (AED) that comprises a defibrillatorprocessing circuit 211, an ECG processing circuit 212, and a bloodpressure sensor processing circuit 213. The second medical device 220can be a patient vital-sign monitoring device that can comprise aventilator processing circuit 221, an ETCO2 sensor processing circuit222, and a spectral muscle-chemistry sensor processing circuit 223. Themobile environment can also include integrated circuits, such aslocation processing circuit 201, records processing circuit 202 andaccelerometer processing circuit 203. For example, these processingcircuits can be integrated into or deployed in an ambulance to assist anambulance driver in the front and/or EMS technician in the back tonavigate the ambulance; locate the nearest healthcare facility; access,edit, and/or update a patient's medical record; and determine a motionor acceleration associated with the ambulance.

In some embodiments, some or all of these processing circuits can bedetached or detachably coupled with the device or system with which itis associated. For example, blood pressure sensor circuit 213 is shownas being detached or detachably coupled with medical device 210. As usedherein, a processing circuit can be considered “detachably coupled” witha device if it is configured to be physically coupled to the deviceusing a removable or detachable connection, such as a removable wire,plug, adapter, or bus connection. A processing circuit can be considered“detached” from, yet “associated” with a device, if it is configured toinitiate a wireless connection with the device, either automaticallyunder certain conditions (e.g., when the processing circuit is withinrange of the device, or when one of the device and/or the processingcircuit is turned on), or when instructed to by a user. In suchembodiments, one processing circuit can be used with multiple medicaldevices and/or systems, and one medical device and/or system can beconfigured to operate with many different types of processing circuits.Processing circuits can be configured to “pair” with a particularmedical device using auto-discovery routines known in the art, orthrough manual user input. In some embodiments, processing circuitsand/or medical devices can be configured to authenticate anotherprocessing circuit before connecting to it. This security authenticationcan comprise a handshake protocol, the sharing and acceptance of ashared secret, verification of the identity of a processing circuit witha trusted authority, or any other authentication mechanism known in theart. Once a processing circuit is “paired” or connected with a medicaldevice or system, the processing circuit, as well as the timing circuitassociated with that processing circuit, can be configured to startcommunicating with the other processing circuits and/or timing circuitson the medical device or system.

Enterprise environment 230 can comprise multiple processing circuits aswell. For example, enterprise environment can comprise blood pressuresensor circuit 231, ECG circuit 232, records circuit 234, ventilatorcircuit 235, and drug delivery circuit 236. Some of these processingcircuits can perform substantially the same functions as processingcircuits that exist in the mobile environment 200—for example,ventilator circuit 235 can perform substantially the same function asventilator circuit 221. A patient arriving at a hospital can thereforebe handed off from one processing circuit (e.g., a first ventilatorcircuit) associated with one device to another processing circuit (e.g.,a second ventilator circuit) associated with another, separate device.Thus, as part of the flow of patient care, processing circuits fromseparate devices may be synchronized with each another to provideseamless monitoring and/or treatment from location to location.

As illustrated in FIG. 1 , each of the processing circuits in FIG. 2 ,regardless of whether they are deployed in mobile environment 200 orenterprise environment 230, can be configured to communicate with atleast one other processing circuit (and possibly all processingcircuits) via a network 250. The network 250 can be configured in all ofthe ways discussed above in relation to network 150 in FIG. 1 . Each ofthe processing circuits can also comprise a timing circuit configured tocommunicate with at least one other timing circuit to coordinate timingamong the processing circuits. For instance, defibrillator circuit 211can include a timing circuit 211 b, while ECG circuit 212 can includetiming circuit 212 b, etc.

FIGS. 3A and 3B are signal flow diagrams illustrating an exemplarysignal flow 300 for coordinating timing between a “master” timingcircuit that keeps a globally “correct” time, and a “slave” timingcircuit that synchronizes to the master timing circuit's local clock,according to some embodiments.

In some embodiments, the medical system can utilize a timing protocol tocoordinate timing between master timing circuits and slave timingcircuits. Examples of such timing protocols can include the IEEE 1588 orPrecision Time Protocol (PTP), the Network Time Protocol (NTP), theClock Sampling Mutual Network Synchronization (CS-MNS) algorithm, theReference Broadcast Synchronization (RBS) algorithm, the ReferenceBroadcast Infrastructure Synchronization (RBIS) algorithm, and theGlobal Positioning System (GPS). The IEEE 1588-2008 Standard forPrecision Clock Synchronization Protocol for Networked Measurement andControl Systems is incorporated by reference herein in its entirety. TheIEEE 1588 protocol is also described in further detail in Jones, Mike,“Get in Sync!: IEEE 1588v2 Transparent Clock Benefits for IndustrialControl Distributed Networks,” Micrel, Inc. (Mar. 22, 2012), and fromWu, Jiang and Peloquin, Robert, “Synchronizing Device Clocks Using IEEE1588 and Blackfin Embedded Processors,” Analog Dialogue 43-11 (November2009), both of which are incorporated by reference herein in theirentirety.

IEEE 1588 is a precision time protocol typically used to synchronizeclocks in multiple distinct devices across a geographically dispersednetwork, and is not generally used to coordinate timing within a singledevice. This is because single devices are commonly operated using asingle common clock, and therefore do not need multiple processingcircuits with distinct local clocks. Furthermore, single devicesgenerally do not employ an internal signaling network, such as anEthernet network. Such a signaling network requires significantsignaling overhead as well as dedicated hardware and software which canincrease the cost and complexity of single devices. Instead, singledevices generally use a standard control bus to allow components tocommunicate with one another (e.g., simple serial interfaces such asUART, I2C, and SPI or higher speed and complexity USB technology), andcan also share certain common resources, such as a shared memory and/orprocessors to facilitate easier communication with less overhead. In thecase of medical systems using the techniques described herein, however,it can be advantageous to separate out tasks across multiple, separateprocessing circuits for the power distribution, security, computationalefficiency, and/or cost reasons discussed above. It can also beadvantageous to utilize an internal signaling network to allowcomponents within a single device to be readily swapped in or out withreplacement or complementary components, or to allow a device tointerface readily with external devices, such as those in mobileenvironment 200 or enterprise environment 230. By using an internalsignaling network, a first processing circuit's interactions with asecond processing circuit can be standardized regardless of whether thetwo processing circuits are integrated into the same device, areconnected via a short-range wireless or wired communication link, oreven geographically dispersed. As a result, while precision timeprotocols such as IEEE 1588 are not normally used in such contexts, theycan be advantageously employed in the medical system context using thetechniques described herein.

As discussed above, each timing circuit can include a local clock. Eachtiming circuit can also include a software layer as well as a hardwarelayer. To illustrate this, FIGS. 3A and 3B include four time-stamppoints: master software time-stamp point 302, master hardware time-stamppoint 304, slave hardware time-stamp point 306, and slave softwaretime-stamp point 308. The software layer of a timing circuit can recorda time-stamp, according to the local clock of that timing circuit,corresponding to the time at which an instruction is sent to thehardware layer to send a message to another timing circuit. The softwarelayer can also record a time-stamp, according to the local clock of thattiming circuit, corresponding to the time at which the software layerprocesses a message received via the hardware layer from another timingcircuit. The hardware layer of a timing circuit can also record atime-stamp according to when a message is actually sent to anothertiming circuit, as well as to record a time-stamp according to when amessage is actually received from another timing circuit. By enablingthe hardware layer of a timing circuit to record time-stamps accordingto the timing circuit's local clock, timing errors associated withdelays or other latency from processing of software instructions, suchas process threading or queueing issues, can be diminished. For example,the system may account for time differences that arise due to a numberof factors, such as disparity between time-stamp signals of each of thetiming circuits and/or communications latency between respectivetiming/processing circuits as signals travel back and forth.

While time differences between clocks of timing circuits may bedetermined as part of the synchronization, it can be appreciated that anaccurate measure of the communications latency may be sufficient fortiming circuits to be substantially synchronized. For example, thereceiving timing circuit, or other communications unit, may shift thereceived data by the amount dictated by the communications latency tosynchronize with a local data stream. In some cases, time stamping andcalculation of time difference between timing circuits may be providedas a secondary or redundant measure of synchronization.

At point 310, the software layer of the master timing circuit instructsthe hardware layer of the master timing circuit to send asynchronization or “SYNC” message. The time at which the software of themaster timing circuit issues this instruction is time-stamped and savedas time Tm1, according to the master timing circuit's local clock. Atpoint 312, the hardware layer of the master timing circuit executes thisinstruction by sending the SYNC message, and time-stamps and saves thetime at which this happens as time Tm1′, again according to the mastertiming circuit's local clock. The SYNC message propagates through thenetwork connecting the master timing circuit to the slave timing circuitand is received by the hardware layer of the slave timing circuit atpoint 314. The slave timing circuit time-stamps and saves the time atwhich the SYNC message is received as time Ts1′, according to the slavetiming circuit's local clock. At point 316, the software layer of theslave timing circuit begins processing the received SYNC message, andtime-stamps and saves the time at which this occurs as time Ts1.

At a later point in time 318, the software layer of the master timingcircuit instructs the hardware layer of the master timing circuit tosend a FOLLOWUP message. The time at which the software of the mastertiming circuit issues this instruction is time-stamped and saved as timeTm2, according to the master timing circuit's local clock. The FOLLOWUPmessage can include the previously saved time-stamp Tm1′. At point 320,the hardware layer of the master timing circuit executes thisinstruction by sending the FOLLOWUP message, and time-stamps and savesthe time at which this happens as time Tm2′, again according to themaster timing circuit's local clock. The FOLLOWUP message propagatesthrough the network connecting the master timing circuit to the slavetiming circuit and is received by the hardware layer of the slave timingcircuit at point 322. The slave timing circuit time-stamps and saves thetime at which the FOLLOWUP message is received as time Ts2′, accordingto the slave timing circuit's local clock. At point 324, the softwarelayer of the slave timing circuit begins processing the receivedFOLLOWUP message (including Tm1′), and time-stamps and saves the time atwhich this occurs as time Ts2.

Continuing on to FIG. 3B, at point 330, the software layer of the slavetiming circuit instructs the hardware layer of the slave timing circuitto send a Delay Request or “DELAYREQ” message back to the master timingcircuit. The time at which the software of the slave timing circuitissues this instruction is time-stamped and saved as time Ts3, accordingto the slave timing circuit's local clock. At point 332, the hardwarelayer of the slave timing circuit executes this instruction by sendingthe DELAYREQ message, and time-stamps and saves the time at which thishappens as time Ts3′. The DELAYREQ message propagates through thenetwork connecting the slave timing circuit to the master timing circuitand is received by the hardware layer of the master timing circuit atpoint 334. The master timing circuit time-stamps and saves the time atwhich the DELAYREQ message is received as time Tm3′, according to themaster timing circuit's local clock. At point 336, the software layer ofthe master timing circuit begins processing the received DELAYREQmessage, and time-stamps and saves the time at which this occurs as timeTm3.

At a later point in time 338, and in response to the DELAYREQ message,the software layer of the master timing circuit instructs the hardwarelayer of the master timing circuit to send a Delay Response or“DELAYRESP” message. The time at which the software of the master timingcircuit issues this instruction is time-stamped and saved as time Tm4,according to the master timing circuit's local clock. The DELAYRESPmessage can include the previously saved time-stamp Tm3′. At point 340,the hardware layer of the master timing circuit executes thisinstruction by sending the DELAYRESP message, and time-stamps and savesthe time at which this happens as time Tm4′, again according to themaster timing circuit's local clock. The DELAYRESP message propagatesthrough the network connecting the master timing circuit to the slavetiming circuit and is received by the hardware layer of the slave timingcircuit at point 342. The slave timing circuit time-stamps and saves thetime at which the DELAYRESP message is received as time Ts4′, accordingto the slave timing circuit's local clock. At point 344, the softwarelayer of the slave timing circuit begins processing the DELAYRESPmessage (including Tm3′), and time-stamps and saves the time at whichthis occurs as time Ts4.

By the end of process 300, the slave timing circuit is in possession ofthe following time-stamps: Ts1′, Ts1, Ts2′, Ts2, Tm1′, Ts3, Ts3′, Ts4′,Ts4, and Tm3′. The slave timing circuit can then calculate two values: a“delay” value representing the amount of time by which the slave timingcircuit's local clock differs from the master timing circuit's localclock, and an “offset” value representing the average amount of timerequired to send a message from the master timing circuit to the slavetiming circuit, and vice versa. Assuming that communications delays aresymmetric, i.e., the amount of time required to send a message from themaster to the slave is the same as the amount of time required to send amessage from the slave to the master, the delay can be calculated usingthe following formula (Equation 1):

${Delay} = \frac{\left( {{{Ts}1^{\prime}} - {{Tm}1^{\prime}}} \right) + \left( {{{Tm}3^{\prime}} - {{Ts}3^{\prime}}} \right)}{2}$

Similarly, the offset can be calculated using the following formula(Equation 2):

${Offset} = \frac{\left( {{{Tm}3^{\prime}} - {{Ts}3^{\prime}}} \right) - \left( {{{Ts}1^{\prime}} - {{Tm}1^{\prime}}} \right)}{2}$

The slave timing circuit is now aware of the amount of time by which itslocal clock is out-of-sync with the local clock of the master timingcircuit. The slave timing circuit can use this delay value to calibrateand adjust its own local clock so that it is more in-sync with themaster timing circuit. In some embodiments, the slave timing circuit cando so simply by adding or subtracting the calculated delay from thecurrent time on its local clock. This method, however, can cause theslave timing circuit's local clock to exhibit undesirable jitter.Alternatively, the slave timing circuit can implement a feedback controlloop using the master-clock time as the reference command, theslave-clock time as the output tracking the master-clock time, and theirtime difference to drive the slave timing circuit's adjustable clock.For example, the slave timing circuit can implement aproportional-integral-derivative (PID) controller to track the mastertiming circuit's local clock accurately, while reducing clock jitter. Insome embodiments, the slave timing circuit can also output an indicationrepresentative of the offset value or the delay value to a medium foruser review. For instance, the slave timing circuit can output theoffset value or the delay value, or a parameter derived from the offsetvalue or the delay value (e.g., a running average, a time-weightedaverage that favors more recent values over older values, etc.) to amedium such as a screen, a speaker, a network interface, and/or a logmaintained in volatile or non-volatile memory. As discussed above, thedisclosed techniques can achieve sub-microsecond-level synchronizationbetween multiple timing circuits.

Further provided herein, as medical-related information is substantiallysynchronized between processing circuits, the system may account forcommunications latency that arises as signals travel between timingand/or processing circuits. In some cases, as circuits send signals backand forth, the elapsed time corresponding to those signals, which mayresult in such latency, may vary. Accordingly, it may be beneficial toperiodically update the overall communications latency between circuits,for example, as averaged over suitable time intervals. Such updates maybe dynamic as the time delay between circuits may change. For instance,medical data may be received at slightly different sampling rates, whichmay contribute to overall time lag between channels. As an illustrativeexample, the sampling rates at successive points in time (e.g., second1, second 2, second 3, etc.) may be received over a range of, forexample, between 250.0 Hz and 250.5 Hz and, at any given time dependingon the conditions of communication, may vary to another range, such asbetween 250.2 Hz and 251.2 Hz (or another possible range). Hence, thesystem may account for any such disparity in latency existing in thecommunication channel(s). In some implementations, one or more of thecircuits may have the ability to communicate via two or morecommunication channels. One of the two or more channels may be ahardware-based communication such as Ethernet, or other serial orparallel hardware communication with low latency, and a second channelwith a higher latency. The higher latency channel may be a wirelesscommunication channel such as Zigbee or WiFi. In one configuration, onecircuit may be plugged into a second circuit using a USB, PCMIA, orother hardware connectors. The communication latency is measuredinitially when communication is established between the circuits, andthen at regular intervals, such as every 1, 10, 20 or 60 seconds. If theunits are disconnected during use, communications may be automaticallyre-established via the wireless channel, and as soon as communicationsare established, a new process is triggered for measuring thecommunication latency. The initiation of a measurement of communicationlatency may occur at regular intervals such as those listed above, ormay be triggered by events such as the detection of a circuit beingdisconnected, or an increase of the measured bit-error-rate (BER)increasing above a threshold.

In some embodiments, the communications latency may be periodically orcontinually updated so that the amount of error due to variation in thecommunication latency time may be taken into account in evaluating theoverall reliability of the medical information. For instance, the timesynchronization accuracy may be presented as a measure of the timejitter of the latency measurement. The jitter measure may be astatistical measure such as one standard deviation, three standarddeviations, etc. The jitter error may be displayed as a number orgraphical element such as a horizontal bar during system use, orafterward when the collected data streams are being displayed togetherin a post-case review, such as with ZOLL CodeReview software (availablefrom ZOLL Medical Corporation, located in Chelmsford Mass.).

In some embodiments, an indication of the expected time error (e.g.,communications latency averaged over a suitable period of time, orotherwise statistically estimated) may be provided along with otherinformation (e.g., time stamps) as timing circuits send requests andresponses to one another. For example, in some cases, this estimatedcommunications latency or the variation in the latency between circuitsmay be output to a data file, display or other medium for auser/operator to review so as to understand the overall reliability ofthe data. Accordingly, when evaluating medical data (e.g., ECG,heart/lung sounds, contractility motion, ETCO2, other physiologicalparameters and/or medical communications), the user/operator may be ableto better distinguish between real data and noise.

FIG. 4 is a flowchart illustrating an exemplary process 400 forcoordinating timing among a plurality of timing circuits, according tosome embodiments. As discussed above, each timing circuit can include alocal clock. At step 402, each timing circuit first determines whetherit should act as a “master” timing circuit that keeps the global,“correct” time, or a “slave” timing circuit that synchronizes to themaster timing circuit's local clock. Preferably, the timing circuithaving the most accurate local clock should be selected to operate asthe “master” timing circuit. For example, timing circuits having accessto a GPS clock or other highly accurate network clock, or incorporatinga highly accurate time-keeping mechanism, should preferably be selectedas the master timing circuit. In some embodiments, each timing circuitcan determine whether it should act as a “master” or a “slave” timingcircuit according to pre-defined software or hardware settings that willcause it to always act as a timing circuit of a certain type. In otherembodiments, each timing circuit can communicate accuracy information(e.g., expected amount of timing error within a certain time period)and/or attribute information (e.g., type of time-keeping mechanism used)with other timing circuits. Each timing circuit can then use a bestclock selection algorithm to determine whether to act as a “master” or a“slave” timing circuit. Since each timing circuit can be configured touse the same best clock selection algorithm, there would preferably beonly one timing circuit selected as the “master” timing circuit in everycase. In some cases, the addition of a timing circuit to an existingmedical system can cause a switch in which timing circuit acts as themaster timing circuit if the best clock selection algorithm determinesthat the newly added timing circuit has a more accurate local clock thanany of the other pre-existing timing circuits. In other embodiments,timing circuits can be configured to measure the accuracy and drift ofother timing circuits' local clocks over a trial period, and then selectthe timing circuit exhibiting the lowest timing error as the mastertiming circuit. In yet other embodiments, the master timing circuit canbe randomly selected—this can be advantageous in cases where everytiming circuit is expected to exhibit the same or similar timingaccuracies.

If a timing circuit determines to act as a master timing circuit,process 400 can branch to step 404. At step 404, the master timingcircuit can send a first message (e.g., a SYNC message) to a slavetiming circuit via a network. The master timing circuit can also savethe time-stamp at which this SYNC message is sent (Tm1′), according tothe local clock of the master timing circuit. At step 406, the mastertiming circuit can send a second message (e.g., a FOLLOWUP message) tothe slave timing circuit via the network. This second message caninclude the time-stamp of the first message (Tm1′). At step 408, themaster timing circuit can receive a delay request message from the slavetiming circuit, and save the time-stamp at which this delay requestmessage is received (Tm3′), according to the local clock of the mastertiming circuit. At step 410, in response to the delay request message,the master timing circuit can send a delay response message to the slavetiming circuit containing the time-stamp corresponding to its receipt ofthe delay request message (Tm3′).

If a timing circuit determines to act as a slave timing circuit, process400 can branch to step 412. At step 412, the slave timing circuit canreceive a first message (e.g., a SYNC message) from a master timingcircuit via a network. The slave timing circuit can also save thetime-stamp at which this SYNC message is received (Ts1′), according tothe local clock of the slave timing circuit. At step 414, the slavetiming circuit can receive a second message (e.g., a FOLLOWUP message)from the master timing circuit via the network. This second message caninclude the time-stamp at which the first message had been sent by themaster timing circuit (Tm1′), according to the local clock of the mastertiming circuit. At step 416, the slave timing circuit can send a delayrequest message to the master timing circuit, and save the time-stamp atwhich this delay request message is sent (Ts3′). At step 418, the slavetiming circuit can receive a delay response message from the mastertiming circuit via the network. The delay response message can containthe time-stamp at which the delay request message was received at themaster timing circuit (Tm3′), according to the local clock of the mastertiming circuit. At step 420, the slave timing circuit can calculatevalues for delay and offset according to equations (1) and (2) above.And at step 422, the slave timing circuit can adjust its local clock tosynchronize with the local clock of the master timing circuit.

The signal flows and processes described above in relation to FIGS. 3A,3B and 4 are exemplary only, and many modifications are possible. Forexample, instead of sending a FOLLOWUP message after the SYNC messagecontaining Tm1′, the master timing circuit can include Tm1′ as part ofthe SYNC message itself. This approach may potentially require moresophisticated hardware and/or software at the master timing circuit, butwould have the advantage of reducing the necessary signal trafficbetween the master timing circuit and the slave timing circuit.Alternatively, the above signal flows and processes can be simplified bynot differentiating between the software and the hardware layers of themaster and the slave timing circuits, and simply using one set oftimestamps (either at the software or the hardware level). This can havethe disadvantage of introducing additional timing errors due toprocessing time, but may be easier and more economical to implement.

Multiple ways of connecting a master timing circuit to a plurality ofslave timing circuits are possible. FIGS. 5A and 5B illustrate twopotential network architectures. In FIG. 5A, a “grandmaster” timingcircuit 502 can be connected to a plurality of slave timing circuits 504a, 504 b, 504 c, and 504 d according to a hub-and-spoke architecture.Messages such as SYNC, FOLLOWUP, DELAYREQ, and DELAYRESP can be sentdirectly between the grandmaster timing circuit 502 and each of theslave timing circuits 504 a-d. In contrast, FIG. 5B illustrates a“daisy-chain” architecture, whereby a “grandmaster” timing circuit 502is connected only to a first slave timing circuit 504 a. Slave timingcircuit 504 a can in turn be connected to slave timing circuit 504 b,which in turn can be connected to 504 c, which in turn can be connectedto slave timing circuit 504 d. “Grandmaster” timing circuit 502 can actas a master timing circuit for slave circuit 504 a. Slave timing circuit504 a can in turn act as a master timing circuit for slave timingcircuit 504 b. And slave timing circuit 504 b can act as a master timingcircuit for 504 c, which in turn can act as a master timing circuit for504 d. This network architecture can simplify the network connections ina medical system and reduce the computational burden of grandmastertiming circuit 502, but can also cause accumulation of timing errors foreach successive slave timing circuit 504 a-d as one traverses furtherdown the chain of connections. In yet other embodiments, “grandmaster”timing circuit 502 can be connected to each of slave timing circuits 504a-d using the same architecture as illustrated in FIG. 5B, but can stillact as the master timing circuit for each slave. For example, SYNC,FOLLOWUP, DELAYREQ, and DELAYREQ messages can still be sent directlyfrom the “grandmaster” timing circuit 502 to each slave timing circuitvia other slave timing circuits, and the delay incurred in forwardingeach message can simply be accounted for as a larger “offset” time inEquation (2) above. A combination of the architectures illustrated inFIGS. 5A and 5B are also possible, whereby a “grandmaster” timingcircuit 502 is connected to a plurality of slave timing circuits, whichin turn are connected to other slave timing circuits further down thechain. The present disclosure is not limited to any particular networkarchitecture.

Integrating timing circuits into the processing circuits of a medicalsystem can facilitate substantial synchronizations of processingcircuits, which in turn can facilitate applications for which tight timesynchronization is required. In some embodiments, substantialsynchronization of processing circuits may involve time synchronizationsof less than 1 millisecond, less than 900 microseconds, less than 800microseconds, less than 700 microseconds, less than 600 microseconds,less than 500 microseconds, less than 400 microseconds, less than 300microseconds, less than 200 microseconds, less than 100 microseconds, oreven less. In some embodiments, substantial synchronization ofprocessing circuits may involve time synchronizations of 50 microsecondsor less (e.g., 1-50 microseconds, 1-20 microseconds, etc.). In yet otherembodiments, substantial synchronization of processing circuits mayinvolve time synchronizations of 10 microseconds or less (e.g., 1-10microseconds, 1-5 microseconds, etc.). For more precise embodiments,time synchronizations of less than one microsecond between processingcircuits can be achieved. FIGS. 6A, 6B, 6C, and 6D illustrate certainexemplary use cases to which the disclosed time synchronization schemecan be applied.

FIG. 6A illustrates how an ECG sensor processing circuit 604 can besynchronized and combined with an ultrasound sensor processing circuit606, according to some embodiments. ECG sensor circuit 604 can beconfigured to generate an ECG waveform corresponding to a patient,whereas an ultrasound sensor circuit 606 can be configured to output anultrasound image of a part of or all of a patient's body, such as thepatient's heart. The output of ECG sensor circuit 604 can be combinedwith the moving ultrasound image/video of ultrasound sensor circuit 606by a processor 602 in order to generate a visual display showing an ECGtrace synchronized with an ultrasound video image. The combined,synchronized display can be useful for showing exactly how the patient'sheart physically moves in response to detected electrical signals on theECG, which can be useful for diagnostic or treatment purposes. WhileFIG. 6A shows an ECG sensor circuit 604 combined with an ultrasoundsensor circuit 606, an ECG sensor circuit can also be combined withother types of sensor circuits and outputs, such as an indication of thepatient's heartbeat (from a heartbeat monitor), an indication of thepatient's breathing pattern (from a breathing sensor), an indication ofthe patient's blood pressure (from a blood pressure monitor), etc. Ingeneral, the disclosed methods, systems and apparatus for coordinatingtiming between multiple processing circuits can be used where two ormore physiological statuses of a patient need to be displayed at thesame time and in a synchronized manner. This can be useful where thesetwo or more physiological statuses need to be compared to aid indiagnosis or treatment.

FIG. 6B illustrates how an ECG sensor processing circuit 604 can besynchronized and combined with an accelerometer processing circuit 610,according to some embodiments. As discussed above, ECG sensor circuit604 can be configured to generate an ECG waveform corresponding to apatient. If the patient is moving, however, such as if the patient isbeing transported by a moving vehicle (e.g., an ambulance), or if thepatient is shivering, walking, subject to chest compressions appliedduring CPR, or otherwise in motion, the ECG waveform output by the ECGsensor circuit 604 can exhibit undesirable motion artifacts, i.e.,inaccuracies introduced by motion or acceleration that can obscure ordistort the patient's ECG waveform. By using accelerometer circuit 610to measure an acceleration associated with the patient, processor 602can filter out and/or compensate for such motion artifacts in the ECGwaveform output by the ECG sensor circuit 604. Synchronizing the localclocks of the ECG sensor circuit 604 and the accelerometer circuit 610can improve the extent to which such filtering and/or compensationtechniques can remove motion artifacts. Achieving sub-microsecond-levelsynchronization between ECG sensor circuit 604 and accelerometer circuit610 can be particularly advantageous for filtering out motion artifacts.A synchronized accelerometer can also be used to filter out motionartifacts in the outputs of other types of sensor circuits, such as aheartbeat monitor, an ultrasound, X-ray, CT, or other imaging sensor,and a blood pressure sensor. In general, the disclosed methods, systemsand apparatus for coordinating timing between multiple processingcircuits can be used to synchronize an accelerometer with another sensorcircuit, so as to filter out and/or compensate for motion artifacts inthe sensor circuit's output.

FIG. 6C illustrates how a blood pressure sensor processing circuit 612can be synchronized and combined with a heartbeat monitor processingcircuit 614, according to some embodiments. FIG. 6C depicts bloodpressure sensor circuit 612 and heartbeat monitor circuit 614 under thecommon control of a processor 602—however, other configurations in whichblood pressure sensor circuit 612 and heartbeat monitor circuit 614 arein direct communication with one another are also possible. Bloodpressure sensor circuit 612 can be configured to measure a patient'ssystolic blood pressure when the patient's heart beats, and also tomeasure a patient's diastolic blood pressure when the patient's heart isat rest. By synchronizing the local clocks of blood pressure sensorcircuit 612 and heartbeat monitor 614, blood pressure sensor circuit 612can be configured to measure the patient's systolic blood pressure atthe precise instant when the patient's heart beats, rather than slightlybefore or slightly after the optimal measurement time. In particular,achieving sub-microsecond-level synchronization can be useful fordiminishing errors in a patient's blood pressure reading.

FIG. 6D illustrates how a defibrillator processing circuit 616 can besynchronized and combined with a breathing sensor processing circuit618, according to some embodiments. FIG. 6D depicts defibrillatorcircuit 616 and breathing sensor circuit 618 under the common control ofa processor 602—however, other configurations in which defibrillatorcircuit 616 and breathing sensor circuit 618 are in direct communicationwith one another are also possible. It can sometimes be advantageous todeliver an electric shock from a defibrillator in-between a patient'sbreath. Breathing sensor circuit 618 can be configured to measure apatient's respiratory rate, and to determine when a patient is breathingand is not breathing. By synchronizing and combining breathing sensorcircuit 618 with defibrillator circuit 616, defibrillator circuit 616can be configured to deliver a therapeutic electric shock only at theoptimal time, e.g., in-between a patient's breaths. In particular,achieving sub-microsecond-level synchronization can be useful forprecisely timing the right moment to deliver a therapeutic electricshock. Other types of treatment circuits can be substituted fordefibrillator circuit 616 and other types of sensor circuits can besubstituted for breathing sensor circuit 618. In general, the disclosedsystems, methods and apparatus for coordinating timing between multipleprocessing circuits can be used to facilitate the delivery of atreatment (e.g., delivery of a drug, operation of a ventilator, ordelivery of a therapeutic electric shock) at optimal times.

FIG. 6E illustrates how a sensor or treatment processing circuit 620 canbe synchronized and combined with a user interface processing circuit622, according to some embodiments. Sensor or treatment circuit 620 cancomprise any type of sensor configured to sense a physiological statusof the patient, including the patient's breathing, heartbeat, spectralmuscle-chemistry, ECG, end-tidal carbon dioxide, blood pressure, etc.Sensor or treatment circuit 620 can also comprise a sensor configured tosense other parameters relevant to the condition or treatment of thepatient, such as the ambient environment around the patient (e.g., theambient temperature, an acceleration associated with the patient'senvironment), or the condition of medical equipment associated with thepatient (e.g., the battery charge of a medical device attached to thepatient). In some embodiments, sensor or treatment circuit 620 can alsocomprise a medical device configured to administer a treatment to thepatient, such as a breathing regulator, a defibrillator or AED, a drugdelivery device, etc. With the aid of processor 602, sensor or treatmentcircuit 620 (or other processing circuit) can be time synchronized withuser-interface circuit 622 via a dynamically secure and reconfigurablenetwork. In some embodiments, the user-interface circuit 622 can providefor real-time monitoring of the patient's condition, environment, orassociated equipment. In other embodiments, user-interface circuit 622can provide real-time instructions to sensor or treatment circuit 620 tobegin, end, or adjust a treatment being administered to the patient.Time synchronization between sensor or treatment circuit 620 anduser-interface circuit 622 can be important for ensuring that medicaldata generated by sensor or treatment circuit 620 is correctly displayedon user-interface circuit 622, and for ensuring that treatments areproperly administered to the patient.

In embodiments where user-interface circuit 622 is located at a remotelocation relative to sensor circuit 620, user-interface circuit 622 canallow for remote monitoring from a distance.

As discussed above, the processing circuits may be time synchronized ina manner so as to form a secure network that is dynamicallyreconfigurable. This manner of time synchronization may be advantageouswhen applied to emergency/rescue scenarios which often employ multipledevices (e.g., medical devices, monitors, defibrillators, controllers,user interfaces, communications devices, etc.) in communication with oneanother where precision signaling (e.g., updating, reporting,input/output, control) is preferable. In some embodiments, such devicesmay include one or more defibrillators/monitors and/or other devices(e.g., user-specific devices, tablets, wrist-worn apparatuses, feedbackdevices, amongst others) in mutual communication, which may require asecure network connection there between, for example, so thatinformation originating from one device is appropriately transmitted orotherwise provided specifically to another device without informationloss, or data breach.

Though, in environments that are often chaotic and fast paced, suchdevices may also be quickly reconfigurable and able to seamlessly movein and out of the secure network without requiring substantial useraction. That is, rather than requiring a user to potentially spendsignificant amounts of time in manually configuring the system of eachdevice in the network, devices located at the emergency scene may bepre-configured to dynamically join and/or leave the secure network, forexample, automatically and/or with one or more simple actions (e.g.,switch actuation, pressing a button, near field communicationconnection, radio frequency, location/proximity recognition, gesturalcode, amongst others). Such devices may further be time synchronizedaccording to methods described herein.

In various embodiments, the time synchronization protocol may carrythrough as various modes of communication may shift between devices. Forinstance, medical devices may be hot swappable in that one may bedirectly connected (e.g., plugged in) to another, yet when they arephysically disconnected, the mode of communication may shift to awireless form, such as Ethernet, Bluetooth, Near Field, etc. When themode of communication shifts, the devices may initiate a suitablerequest and response loop test, such as those discussed herein, thatchecks the timing there between.

Aspects of the present disclosure may also apply during an entire rescuesequence, such as from an emergency site to a hospital. For example, aportable defibrillator or monitoring device located in a home may beinitially connected to a wireless Internet network. Though, whentransported to an ambulance, truck or hospital, the defibrillator ormonitoring device may automatically time synch with nearby devices, suchas more advanced life support devices and/or mobile devices (e.g.,tablet, cell phone) that employ medical capabilities. As the patientmoves along within the emergency resuscitation context, the medicaldevices encountered or otherwise associated therewith may seamlesslyemploy time synching capabilities between operating and timing circuits,as discussed herein.

Some embodiments of the present disclosure include various steps, someof which may be performed by hardware components or may be embodied inmachine-executable instructions. These machine-executable instructionsmay be used to cause a general-purpose or a special-purpose processorprogrammed with the instructions to perform the steps. Alternatively,the steps may be performed by a combination of hardware, software,and/or firmware. In addition, some embodiments of the present disclosuremay be performed or implemented, at least in part (e.g., one or morecircuits), on one or more computer systems, mainframes (e.g., IBMmainframes such as the IBM zSeries, Unisys ClearPath Mainframes, HPIntegrity NonStop servers, NEC Express series, and others), orclient-server type systems. In addition, specific hardware aspects ofembodiments of the present disclosure may incorporate one or more ofthese systems, or portions thereof.

As such, FIG. 7 is an example of a computer system 700 with whichembodiments of the present disclosure may be utilized. According to thepresent example, the computer system includes a bus 701, at least oneprocessor 702, at least one communication port 703, a main memory 704, aremovable storage media 705, a read only memory 706, and a mass storage707.

Processor(s) 702 can be any known processor, such as, but not limitedto, an Intel® Itanium® or Itanium 2® processor(s), an AMD® Opteron® orAthlon MP® processor(s), or Motorola® lines of processors. Communicationport(s) 703 can be any of RS-232 port for use with a modem based dialupconnection, a 10/100 Ethernet port, or a Gigabit port using copper orfiber, or wireless communication ports using, for example, WiFi, LTE,3GPP, Bluetooth, NFC, or other wireless protocols. Communication port(s)703 may be chosen depending on a network such as a Local Area Network(LAN), Wide Area Network (WAN), or any network to which the computersystem 700 connects. Main memory 704 can be Random Access Memory (RAM),or any other dynamic storage device(s) commonly known to one of ordinaryskill in the art. Read only memory 706 can be any static storagedevice(s) such as Programmable Read Only Memory (PROM) chips for storingstatic information such as instructions for processor 702, for example.

Mass storage 707 can be used to store information and instructions. Forexample, hard disks such as the Adaptec® family of SCSI drives, anoptical disc, an array of disks such as RAID (e.g., the Adaptec familyof RAID drives), or any other mass storage devices may be used, forexample. Bus 701 communicably couples processor(s) 702 with the othermemory, storage and communication blocks. Bus 701 can be a PCI/PCI-X orSCSI based system bus depending on the storage devices used, forexample. Removable storage media 705 can be any kind of externalhard-drives, floppy drives, flash drives, IOMEGA® Zip Drives, CompactDisc-Read Only Memory (CD-ROM), Compact Disc-Re-Writable (CD-RW), orDigital Video Disk-Read Only Memory (DVD-ROM), for example. Thecomponents described above are meant to exemplify some types ofpossibilities. In no way should the aforementioned examples limit thescope of the invention, as they are only exemplary embodiments.

1-49. (canceled)
 50. A medical system comprising: a plurality ofprocessing circuits in communication with one another, each processingcircuit configured to provide medical-related data; a plurality oftiming circuits, each timing circuit having a clock, wherein at leastsome of the timing circuits are each associated with a differentprocessing circuit of the plurality of processing circuits, and whereineach timing circuit is configured to: communicate with at least oneother corresponding timing circuit, produce at least one time stampedsignal for the timing circuit, transmit the at least one time stampedsignal to the at least one other corresponding timing circuit; and aprocessor configured to generate a data file containing latency dataassociated with each of the at least one time stamped signalstransmitted between corresponding timing circuits of the plurality oftiming circuits, the latency data comprising at least one offset valueor delay value between two corresponding timing circuits of theplurality of timing circuits, each of the two corresponding timingcircuits being associated with a different processing circuit configuredto provide physiological data regarding a patient.
 51. The medicalsystem of claim 50, wherein the processor is configured to determinetime differences between the clocks of the timing circuits duringcommunication of the processing circuits and correct for the timedifferences between the clocks.
 52. The medical system of claim 50,wherein the latency data associated with each of the at least one timestamped signals comprises one or more time stamps generated by any ofthe timing circuits.
 53. The medical system of claim 50, wherein thelatency data associated with each of the at least one time stampedsignals comprises an average communication latency over a period oftime.
 54. The medical system of claim 50, wherein the latency dataassociated with each of the at least one time stamped signals comprisesan indication of variation in a communication latency between timingcircuits.
 55. The medical system of claim 50, wherein one of theplurality of timing circuits is configured to act as a master timingcircuit and another of the plurality of timing circuits is configured toact as a slave timing circuit.
 56. The medical system of claim 50,wherein each timing circuit is further configured to correct for a timedifference between the clock of the timing circuit and another timingcircuit.
 57. The medical system of claim 50, wherein each of the timingcircuits is further configured to determine a communication latencybetween timing circuits at least in part based on the at least one timestamped signals.
 58. The medical system of claim 50, wherein theplurality of processing circuits include at least one sensor configuredto monitor a physiological status of a patient and to generate a set ofsensor data based on the physiological status.
 59. The medical system ofclaim 58, wherein at least one of the plurality of processing circuitsis configured to deliver at least one of an electric shock to thepatient, a drug to the patient, or ventilation assistance to thepatient.
 60. The medical system of claim 50, wherein at least one of theplurality of processing circuits comprises at least one of a breathingsensor, a blood pressure sensor, an ECG sensor, or an accelerometer. 61.The medical system of claim 50, wherein at least one of the plurality ofprocessing circuits comprises at least one of a heartbeat sensor, ablood oxygen sensor, a carbon dioxide sensor, an ultrasound sensor, aspectral muscle-chemistry sensor, a temperature sensor, a video-camera,or a microphone.
 62. The medical system of claim 50, wherein each timingcircuit is configured to communicate with at least one other timingcircuit via a wired or optical serial communications network.
 63. Themedical system of claim 50, wherein each timing circuit is configured tocommunicate with at least one other timing circuit via a wirelessnetwork.
 64. The medical system of claim 50, wherein the plurality ofprocessing circuits, the plurality of timing circuits, and the processorare integrated into a single device.
 65. The medical system of claim 50,wherein the plurality of processing circuits, the plurality of timingcircuits, and the processor are dispersed across two or more devicesconnected via a network.
 66. The medical system of claim 50, wherein aprocessing circuit of the plurality of processing circuits is configuredto be dynamically connected to and disconnected from the processor, andwherein the processing circuit is configured to communicate with theprocessor only when the processing circuit is dynamically connected. 67.The medical system of claim 50, wherein the plurality of processingcircuits are configured to form a secure communications network and todynamically join or leave the secure communications network.
 68. Themedical system of claim 67, wherein a given processing circuit of theplurality of processing circuits is configured to dynamically join orleave the secure communications network via proximity detection.
 69. Themedical system of claim 50, wherein each of the plurality of processingcircuits includes a corresponding treatment timing circuit.